package org.scboy.dbms.service;

import java.util.List;

import org.scboy.utils.entitys.coobi.Model;
import org.scboy.utils.entitys.coobi.Page;

/**
 * 服务器管理
 */
public interface BaseServersService {
	
	/**
	 * 分页查询服务器列表
	 * @param params
	 * @return
	 */
	Page page(Model params);

	/**
	 * 新增服务器
	 * @param params
	 * @return
	 */
	boolean add(Model params);
	

	/**
	 * 删除服务器配置
	 * @param ip
	 * @return
	 */
	boolean delete(String ip);
	
	
	/**
	 * 修改服务器配置
	 * @param params
	 * @return
	 */
	boolean update(Model params);
	
	/**
	 * 获取服务器配置
	 * @param appName
	 * @return
	 */
	Model get(String ip);
	
	/**
	 * 获取所有正常状态服务器
	 * @return
	 */
	List<Model> list();

	/**
	 * 获取所有服务器
	 * @return
	 */
	List<Model> listAll();
	
	/**
	 * 服务器健康状态
	 * @param ip
	 * @return
	 */
	Model health(String ip);
	
	/**
	 * 重启服务器
	 * @param ip
	 */
	void restart(String ip);
	
}
